CentOS + Docker + Gitlab-ce

Docker安装与启动

搜索

1
yum search docker

安装

1
yum install docker

启动

1
systemctl start docker

开机自启动

1
systemctl enable docker.service

查看状态

1
systemctl status docker

查看版本

1
2
docker version
docker -v

查看信息

1
docker info

镜像打包和导入

1
2
//将名为gitlab/gitlab-ce的image打包成gitlab.tar
docker save -o gitlab.tar gitlab/gitlab-ce
1
2
//导入image
docker load -i gitlab.tar

Gitlab-ce安装

搜索

1
docker search gitlab-ce

下载

一般情况下,我都是使用官方镜像或者阿里镜像

1
docker pull gitlab/gitlab-ce

安装

1
2
3
4
5
6
7
8
9
sudo docker run -i \
--hostname centos \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
docker.io/gitlab/gitlab-ce

/srv目录下若没有对应文件夹,可自行创建,也可修改成其他文件路径

使用

进入Gitlab Docker环境

1
docker exec -it gitlab /bin/bash

全局配置文件

修改下载地址中的显示IP也在此修改

1
/etc/gitlab/gitlab.rb

ssh端口修改后处理

1
2
3
4
5
6
7
docker exec -it gitlab /bin/bash

vi /etc/gitlab/gitlab.rb
#修改ssh对应host地址
gitlab_rails['gitlab_ssh_host'] = 'xxx.xxx.xxx.xxx'
#修改ssh映射端口
gitlab_rails['gitlab_shell_ssh_port'] = 23

注意打开服务器上对应的端口

定时备份以及自动上传ftp服务器

编辑定时任务(每天凌晨两点备份,三点上传。下面sh文件是自编的一个ftp上传脚本)

1
2
3
4
vi /var/spool/cron/root

0 2 * * * docker exec -t gitlab gitlab-rake gitlab:backup:create CRON=1
0 3 * * * /root/BKConfig/upload_bk.sh

脚本内容

1
2
3
4
5
6
7
8
9
10
11
#!/bin/bash
ftp -n<<!
open <ftp服务器地址>
user <username> <password>
binary
lcd <待上传的文件夹路径>
prompt
mput *
close
bye
!

阿里云加速器

寻找属于你的加速器

阿里云官网,登陆以后,找到“弹性计算“下的“容器镜像服务“,然后你就可以看到属于你自己的“镜像加速器“

服务器Docker镜像配置

/etc/docker/daemon.json

1
2
3
{
"registry-mirrors": ["<your accelerate address>"]
}

替换成你自己的加速器地址即可。

配置完成后重启Docker

docker overlay2 空间占满100%时,处理方法

原文: https://unix.stackexchange.com/questions/414483/docker-increase-available-disk-space
跟换overlay2目录地址:
You could move the docker directory to somewhere under /home and create a symlink /var/lib/docker pointing to the new location. For example:

shut down docker first
mv /var/lib/docker /home/
ln -s /home/docker/ /var/lib/

restart docker now
Use another directory if /home/docker already exists.

Instead of, or as well as, the symlink from /var/lib/docker -> /home/docker, you could also reconfigure docker so that it expects to find its directory under /home rather than /var/lib.

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×